> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.beatapi.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.beatapi.io/_mcp/server.

# Legacy text models

> Older text model IDs that still work, with the current model to move to.

Older text model IDs that still work, with the current model to move to.

* Every ID below still answers. New work should use the replacement.
* Same endpoints, same key and same prices as when the model was current.

> **Note**
>
> Use `https://direct.beatapi.io` as the base URL for text requests: it is not subject to Cloudflare's 100-second limit, so a long non-streaming request is not cut off. `https://api.beatapi.io` also works and is the fallback if `direct.beatapi.io` is unreachable from your network. The key, models and prices are the same on both. Image and video APIs use `https://api.beatapi.io` only.

Older IDs stay callable so existing integrations do not break. Each row names the current model to move to; the protocol column shows how the model answers on each format.

| Model ID                    | Family                                          | Use instead                                                  | Protocols                                            |
| --------------------------- | ----------------------------------------------- | ------------------------------------------------------------ | ---------------------------------------------------- |
| `gpt-5.6-sol`               | [GPT](/text-api/gpt/responses)                  | [`gpt-6.1-sol`](/text-api/gpt/responses)                     | Chat Completions, Responses                          |
| `gpt-5.6-terra`             | [GPT](/text-api/gpt/responses)                  | [`gpt-6-sol`](/text-api/gpt/responses)                       | Chat Completions, Responses                          |
| `gpt-5.6-luna`              | [GPT](/text-api/gpt/responses)                  | [`gpt-6-luna`](/text-api/gpt/responses)                      | Chat Completions, Responses                          |
| `claude-opus-5`             | [Claude](/text-api/claude/messages)             | [`claude-opus-5-5`](/text-api/claude/messages)               | Messages                                             |
| `claude-sonnet-5`           | [Claude](/text-api/claude/messages)             | [`claude-sonnet-5-5`](/text-api/claude/messages)             | Messages                                             |
| `claude-haiku-4-5-20251001` | [Claude](/text-api/claude/messages)             | [`claude-haiku-5-5`](/text-api/claude/messages)              | Messages                                             |
| `gemini-3.6-flash`          | [Gemini](/text-api/gemini/chat-completions)     | [`gemini-3.8-flash`](/text-api/gemini/chat-completions)      | Chat Completions, Responses, Messages, Gemini native |
| `gemini-3.7-flash`          | [Gemini](/text-api/gemini/chat-completions)     | [`gemini-3.8-flash`](/text-api/gemini/chat-completions)      | Chat Completions, Responses, Messages, Gemini native |
| `grok-4.5`                  | [Grok](/text-api/grok/chat-completions)         | [`grok-4.7`](/text-api/grok/chat-completions)                | Chat Completions, Responses, Messages                |
| `grok-4.6`                  | [Grok](/text-api/grok/chat-completions)         | [`grok-4.7`](/text-api/grok/chat-completions)                | Chat Completions, Responses, Messages                |
| `deepseek-v4-flash-0731`    | [DeepSeek](/text-api/deepseek/chat-completions) | [`deepseek-v4.1-flash`](/text-api/deepseek/chat-completions) | Chat Completions, Responses, Messages                |

* Moving to the replacement is a change of the `model` string; the request format does not change.
* Check [the price table](https://beatapi.io/pricing) before switching: a replacement can have a different price and context window.
* A legacy ID can be withdrawn later. `GET /v1/models` lists what your key can call today.