# Models and model ids

> Every model id you can send, which request formats each one accepts, its per-token rates, and how to list the models your key can call from code.

Source: https://oneaiapikey.com/docs/models

Send a model id in the `model` field of any request. Ids are lowercase and exact: `claude-sonnet-5-5` works, `Claude Sonnet` does not. One key and one balance cover every model below.

## Current models

Rates are in US dollars per 1 million tokens. “Formats” says which request formats the model accepts natively: OpenAI means `/v1/chat/completions` (the [Responses API](https://oneaiapikey.com/docs/responses) is fully supported on GPT models only), Anthropic means `/v1/messages`. Click an id for the full spec sheet: context window, maximum output, modalities and plan coverage.

| Model id | Formats | Input / 1M | Output / 1M | Cached / 1M | Context |
| --- | --- | --- | --- | --- | --- |
| [claude-opus-5-5](https://oneaiapikey.com/models/claude-opus-5-5) | Anthropic, OpenAI | $4.40 | $22 | $0.22 | 1M |
| [claude-sonnet-5](https://oneaiapikey.com/models/claude-sonnet-5) | Anthropic, OpenAI | $2.20 | $11 | $0.22 | 1M |
| [claude-haiku-4-5](https://oneaiapikey.com/models/claude-haiku-4-5) | Anthropic, OpenAI | $1.10 | $5.50 | $0.11 | 200K |
| [gpt-6.1-sol](https://oneaiapikey.com/models/gpt-6-1-sol) | OpenAI | $2.20 | $11 | $0.11 | 1.05M |
| [gpt-5.6-sol](https://oneaiapikey.com/models/gpt-5-6-sol) | OpenAI | $5.50 | $33 | $0.55 | 1.05M |
| [gpt-5.6-terra](https://oneaiapikey.com/models/gpt-5-6-terra) | OpenAI | $2.20 | $13.20 | $0.22 | 1.05M |
| [grok-4.6](https://oneaiapikey.com/models/grok-4-6) | OpenAI | $2.20 | $6.60 | $0.55 | 500K |
| [claude-sonnet-5-5](https://oneaiapikey.com/models/claude-sonnet-5-5) | Anthropic, OpenAI | $2.20 | $11 | $0.22 | 1M |
| [grok-4.7](https://oneaiapikey.com/models/grok-4-7) | OpenAI | $2.20 | $6.60 | $0.55 | 500K |
| [deepseek-v4-flash](https://oneaiapikey.com/models/deepseek-v4-flash) | OpenAI | $0.24 | $0.96 | $0.0048 | 1M |
| [deepseek-v4-pro](https://oneaiapikey.com/models/deepseek-v4-pro) | OpenAI | $1.32 | $3.96 | $0.044 | 1M |

The same table, with filters and comparisons, is on the [models page](https://oneaiapikey.com/models). Rates there and here come from one file, so they always match.

## Free and discounted models

There are no free models at the moment. The [free models page](https://oneaiapikey.com/models/free) lists them when there are.

## List models from code

`GET /v1/models` returns the models your key can call right now. It is free and does not count against any limit, so it is also the quickest way to check that a key works.

curl:

```bash
curl -s https://api.oneaiapikey.com/v1/models \
  -H "Authorization: Bearer $RELAYKIT_API_KEY"
```

Python:

```python
import os
from openai import OpenAI

client = OpenAI(base_url="https://api.oneaiapikey.com/v1", api_key=os.environ["RELAYKIT_API_KEY"])

for model in client.models.list():
    print(model.id)
```

Node:

```js
import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.oneaiapikey.com/v1", apiKey: process.env.RELAYKIT_API_KEY });

for await (const model of client.models.list()) {
  console.log(model.id);
}
```

The response is the OpenAI list format:

200 OK (shortened):

```json
{
  "object": "list",
  "success": true,
  "data": [
    {
      "id": "claude-sonnet-5-5",
      "object": "model",
      "created": 1626777600,
      "owned_by": "…"
    }
  ]
}
```

The list is filtered for you:

- If the key has a model list (see [per-key settings](https://oneaiapikey.com/docs/authentication#model-list)), only those models appear.
- Models that are not available to your account, or not yet priced, are left out. An account that has not paid $3 or more in total yet sees an empty list.

### Anthropic-style list

Send both `x-api-key` and `anthropic-version` and the same route answers in Anthropic’s format, which is what Anthropic SDKs and Claude Code expect:

Terminal:

```bash
curl -s https://api.oneaiapikey.com/v1/models \
  -H "x-api-key: $RELAYKIT_API_KEY" \
  -H "anthropic-version: 2023-06-01"

# {"data":[{"id":"claude-sonnet-5-5","created_at":"…","display_name":"claude-sonnet-5-5","type":"model"}],
#  "first_id":"…","has_more":false,"last_id":"…"}
```

> **Use the list, not the single-model route:** `GET /v1/models/{id}` exists for SDK compatibility, but it checks a built-in catalogue rather than your account and answers HTTP 200 even when the model is unknown. To check whether a model is available to your key, look for it in `GET /v1/models`.

## Choosing a model

- **Start with a balanced model** such as `claude-sonnet-5-5` or `gpt-5.6-terra`. Move up to a flagship only when quality is the bottleneck.
- **Use a fast model for sub-tasks**: classification, summaries, commit messages and agent sub-steps. `claude-haiku-4-5` costs a fraction of a flagship.
- **Output tokens cost more than input tokens** on every paid model, usually three to five times as much. Asking for shorter answers saves more than trimming the prompt.
- **Long, repeated prompts** (agents, RAG, chat history) get cheaper with [prompt caching](https://oneaiapikey.com/docs/prompt-caching).

## When a model id fails

| Response | Meaning | Fix |
| --- | --- | --- |
| `503` with code `model_not_found` | The id is wrong, the model is not available to your account or plan, or the account has not paid $3 or more yet | Copy the id from the table above or from `GET /v1/models` |
| `403` “This token has no access to model …” | The key has a model list without this model | Edit the key, or use a key without a model list |
| `400` with code `model_price_error` | The model is listed but not open for requests yet | Pick another model; it will appear in `GET /v1/models` once it is open |

All error bodies are on the [errors page](https://oneaiapikey.com/docs/errors#model-not-found).
